<?php
namespace App\Api\Repositories\Log;

use App\Models\Log\LogUserPay as Model;

class LogUserPayRepositories{
    protected $eloquentClass = Model::class;

    /**
     * 创建一个支付记录
     *
     * @param string $order_no 订单编号
     * @param int $uid 会员id
     * @param int $money 支付金额
     * @param int $integral 可得积分
     * @return void
     */
    public function create_data($order_no, $uid, $money, $integral){
        return $this->eloquentClass::create([
            'order_no'=> $order_no,
            'uid'=> $uid,
            'type'=> 'wxmini',
            'order_type'=> '充值',
            'money'=> $money,
            'integral'=> $integral,
            'platform'=> 'wxmini',
            'status'=> 1
        ]);
    }

    /**
     * 通过某个字段获取一条数据
     *
     * @param string $field 字段名
     * @param string $value 值
     * @param array $select
     * @return void
     */
    public function use_field_select_data($field, $value, $select=['*']){
        return $this->eloquentClass::where($field, $value)->select($select)->first();
    }

    /**
     * 修改某些字段
     *
     * @param [type] $obj
     * @param array $field_values
     * @return void
     */
    public function update_fields($obj, $field_values=[]){
        foreach($field_values as $field=> $value){
            $obj->$field = $value;
        }
        return $obj->save();
    }
}